/*
* Copyright 2010 Pavel Kozhin 
*
* Licensed under the Apache License, Version 2.0 (the "License"); 
* you may not use this file except in compliance with the License. 
* You may obtain a copy of the License at 
* 
* http://www.apache.org/licenses/LICENSE-2.0
* 
* Unless required by applicable law or agreed to in writing, software 
* distributed  under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
* See the License for the specific language governing permissions and 
* limitations under the License.
*
* Author: Pavel Kozhin.
*/

package org.bookmarksframework.core
{
	public class FacileHierarchy
	{
		public function FacileHierarchy(owner:IFacileHierarchical,
										facileKey:*, value:*)
		{
			_owner = owner;
			_facileKey = facileKey;
			_value = value;
		}
		
		private var _owner:IFacileHierarchical;

		public function get owner():IFacileHierarchical
		{
			return _owner;
		}
		
		public function getParent():FacileHierarchy
		{
			return owner.getParent(facileKey);
		}
		
		private var _facileKey:*;

		public function get facileKey():*
		{
			return _facileKey;
		}

		private var _value:*;

		public function get value():*
		{
			return _value;
		}
		
		public function getChildren():Vector.<FacileHierarchy>
		{
			return owner.getChildren(facileKey);
		}
		
	}
}